package br.ucb.servlets.usuario;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import br.ucb.dao.UsuarioDAO;
import br.ucb.dominio.EnumPrivilegio;
import br.ucb.entidade.Usuario;
import br.ucb.service.UsuarioService;
import br.ucb.service.impl.UsuarioServiceImpl;
import br.ucb.servlets.AbstractPapirosServlet;

public class CadastrarUsuarioServlet extends AbstractPapirosServlet<Usuario, UsuarioService, UsuarioDAO>{

	private static final long serialVersionUID = 1L;

	@Override
	protected void processaRequisicao(HttpServletRequest req,
			HttpServletResponse resp)throws ServletException,IOException {
		
		setEntidadeService(new UsuarioServiceImpl());
		setEntidade(getDadosFormulario(req));
		insert(getEntidade(), req);
		
		HttpSession sessao = req.getSession();
		sessao.setAttribute("user", getEntidade());

		forward(req, resp, "/index.jsp");
	}
	
	private Usuario getDadosFormulario(HttpServletRequest req){
		Usuario user = new Usuario();
		
		user.setCpf(req.getParameter("txtCpf"));
		user.setSenha(req.getParameter("txtSenha"));
		user.setPrivilegio(EnumPrivilegio.USUARIO.getSigla());
		
		return user;
	}
	
}
